A computer network is a collection of interconnected computing devices that exchange data and share resources. There exist a number of approaches for communicating the data between the computing devices within the network. One approach makes use of multicast addresses allowing a transmitting computing device to send data to a group of one or more recipient computing devices. The transmitting device assigns a multicast address to the data enabling each computing device of the group to receive a copy of the data.
One common usage for multicast communication is the distribution of multimedia content over a computer network, such as the Internet. For example, content providers may utilize multicast communications to distribute multimedia content to the recipient devices, also referred to as “consumers.” Example content that is often distributed using multicast communications includes local area network television (LAN TV), desktop conferences, corporate broadcasts, music and video web casts, and other forms of multimedia content.
Consumers may access and switch between different multicast content provided by a content provider or multiple content providers by submitting “multicast action requests.” In particular, the multicast action requests allow consumers to join and leave the various multicast groups associated with the multicast addresses. An exemplary protocol for issuing multicast action requests, such as a join request, is the Internet Group Management Protocol (IGMP).
Typically, the content providers make use of a public network, such as the Internet, to distribute the multicast content to the consumers. The consumers may be geographically distributed from the content providers and from each other, and typically access the public network by respective service providers. The service providers provide the infrastructure, such as routers, land lines and the like, that provide access to the public network.
In the context of multicast communications, the service providers mediate the interactions, i.e., multicast action requests, between the consumers and the content providers. More specifically, the service providers service the multicast action requests issued by the corresponding consumers to which they provide network access. Consequently, the service providers manage multicast groups associated with their respective consumers, and distribute multicast content received from the content providers to their respective consumers.
In some environments, the service providers may provide customers with virtual private networks (VPNs) to securely share data between two or more customer sites. For instance, a company with two different sites may securely transmit data between the two different sites via a VPN. In providing VPN services, the service providers often provide logically isolated virtual domains for the different VPNs. In particular, the service providers may utilize edge routers that provide the VPN services by maintaining logically isolated forwarding tables and other network information associated with each VPN.
Due to this logical isolation, it is often difficult for service providers to provide VPN customers with multicast content from sources external to the VPN. For example, the logically isolated forwarding tables present challenges when routing multicast action requests from the VPN customer to the multicast providers and the multicast content from the multicast providers to the VPN customers.